Technical Field
The present disclosure relates to a method of automatically setting a protocol of a Programmable Logic Controller (PLC) system.
Description of the Related Art
A server-client system refers to a network architecture consisting of clients and a server that is frequently used in device-to-device communication. In the server-client system, the server performs a function of providing a service and the clients perform a function of consuming a service provided by the server. The clients and the server communicate with one another in such a manner that the clients send requests for a service to the server and the server sends responses to the requests from the clients.
The server may communicate with one client or a plurality of clients. The server supports a single protocol, and one client or a plurality of clients using the protocol supported by the server may access the server.
The clients transmit request frames to the server and the server transmits response frames in response to the request frames from the clients. Hereinafter, a communication process between a server and clients will be described with reference to FIGS. 1 and 2.
In the example shown in FIG. 1, a server and a client communicate with each other. A server 11 supports a single protocol, and a client 12 using the protocol supported by the server 11 accesses the server 11. For example, the server 11 of FIG. 1 may support a protocol A, and the client 12 using the protocol A supported by the server 11 may access the server 11.
The client 12 and the server 11 communicate with each other in such a manner that the client 12 transmits a request frame for a service to the server 11 and the server 11 analyzes the request frame received from the client 12 and transmits a response frame to the client 12. The request frame includes a service such as a data read/write request or a specific service control.
Now, reference is made to FIG. 2 showing an example in which a server communicates with N clients. The server 21 supports a single protocol, and a plurality of clients 22a, 22b, and 22c using the protocol supported by the server 21 access the server 21.
For example, the server 21 of FIG. 2 may support a protocol A, and a first client 22a, a second client 22b, and a third client 22c using the protocol A supported by the server 21 may access the server 21. If the server 21 supports a protocol B instead of the protocol A, the clients using the protocol B may access the server 21.
At least one of the first client 22a, the second client 22b, and the third client 22c transmits a request frame for a service to the server 21, and the server 21 analyzes the request frame received from the at least one client, e.g., the first client 22a and transmits a response frame in response to the request frame to the client 22a. The request frame includes a service such as a data read/write request or a specific service control.
However, in FIGS. 1 and 2, the server supports only a single protocol, and thus only clients using the protocol supported by the server can access the server. When the server-client system attempts to communicate with a client that uses a protocol other than those supported by the server, an additional server for the protocol is required.
For example, in the server-client system shown in FIG. 3A, a first server 31a may support a protocol A, and a first client 32a using the protocol A may access the first server 31a. However, the first server 31a does not support a protocol B, and thus a second client 32b using the protocol B cannot access the first server 31a. Therefore, if the server-client system including the server that supports only a single protocol, i.e., the protocol A, attempts to communicate with a second client 32b, a second server 31b that supports the protocol B is additionally required, as shown in FIG. 3B.
If the server-client system includes a server that supports a plurality of protocols, the server has to set a protocol to be used by a client before communicating with the client. Hereinafter, a process in which a server supporting a plurality of protocols sets a protocol will be described with reference to FIG. 4.
For example, as shown in FIG. 4, when a server 41 supports a plurality of protocols such as a protocol A, a protocol B, a protocol C, and a protocol D, the server 41 has to perform a protocol presetting process of setting the protocol C as the communication protocol before communicating with a client 42 using the protocol C. The protocol presetting process is performed by a manager who previously identifies the protocol C as the communication protocol with the client 42 and inputs the protocol C to the server 41. Only after the presetting process of the protocol C is complete, the server 41 may communicate with the client 42 using the protocol C.
As described above, in the related art, even if a server supporting a plurality of protocols is employed, it is still required to perform presetting processes of different protocols for different clients. Further, the server can support only one protocol after setting of a protocol is completed and until another protocol is reset.